package org.jkuang.qstar.index.iterator;

import org.jkuang.qstar.index.store.DataNode;

/**
 * or 算法
 * 
 * @author jkuang
 *
 */
public class Container {
	/**
	 * 是否包含数组
	 * 
	 * @param array_b
	 * @return
	 */
	public boolean contains(DataNode t, int[][] array_b) {
		if (array_b == null || array_b.length == 0) {
			return true;
		}
		for (int i = 0; i < array_b.length; i++) {
			if (t.contains(array_b[i], 0)) {
				return true;
			}
		}
		return false;

	}

	/**
	 * 计算是否包含所有属性
	 * 
	 * @param map
	 * @return
	 */
	public boolean notContains(int[] a, int[] b) {
		if (b == null || b.length == 0) {
			return true;
		}

		if (a == null || a.length == 0) {
			return true;
		}

		for (int j = 0, k = 0; k < b.length && j < a.length;) {
			if (b[k] == a[j]) {
				return false;
			} else if (b[k] > a[j]) {
				j++;
			} else {
				k++;
			}
		}
		return true;
	}
}
